Qué es una Base de Datos
Una base de datos (BD) es un conjunto organizado de información estructurada que permite almacenar, consultar, modificar y eliminar datos de forma eficiente.
Las bases de datos son fundamentales en prácticamente cualquier aplicación moderna: redes sociales, tiendas online, bancos, videojuegos, hospitales o plataformas de streaming.
Base de datos vs fichero plano
| Ficheros Planos | Bases de Datos |
|---|---|
| Datos aislados | Datos relacionados |
| Poca seguridad | Control de accesos |
| Dificultad de búsqueda | Consultas rápidas con SQL |
| Duplicidad frecuente | Integridad de datos |
Un Excel con clientes puede funcionar para una tienda pequeña. Pero Amazon necesita millones de registros relacionados entre sí, accesibles al instante y por miles de usuarios simultáneamente.
Ejemplo SQL
CREATE TABLE Clientes (
id INT PRIMARY KEY,
nombre VARCHAR(100),
email VARCHAR(100)
);
SELECT * FROM Clientes;
“Excel puede sustituir completamente a un SGBD”. ❌ Falso. Excel no ofrece acceso concurrente real ni integridad avanzada.
Historia de las Bases de Datos
Años 60
Las empresas utilizaban ficheros planos. Los sistemas eran lentos, poco seguros y difíciles de mantener.
Años 70-80
Edgar F. Codd desarrolló el modelo relacional, revolucionando el almacenamiento de datos mediante tablas.
Años 90-2000
Aparecen bases de datos distribuidas y orientadas a objetos.
Actualidad
Surgen las bases de datos NoSQL para Big Data, inteligencia artificial y aplicaciones web masivas.
SQL sigue siendo uno de los lenguajes más demandados del mercado.
SGBD y sus Ventajas
Un Sistema de Gestión de Bases de Datos (SGBD) es un software encargado de crear, administrar y proteger bases de datos.
Ejemplos populares
- MySQL
- PostgreSQL
- Oracle
- Microsoft SQL Server
Ventajas principales
- Integridad: evita inconsistencias.
- Seguridad: control de permisos.
- Escalabilidad: soporta crecimiento.
- Acceso concurrente: múltiples usuarios simultáneos.
GRANT SELECT ON Clientes TO usuario1;
Tipos de SGBD
Relacionales (SQL)
Organizan la información en tablas relacionadas.
- Datos estructurados
- Lenguaje SQL
- Alta integridad
No Relacionales (NoSQL)
Flexibles y preparados para grandes volúmenes de datos.
- Documentos
- Grafos
- Clave-valor
- Columnas
| SQL | NoSQL |
|---|---|
| Datos estructurados | Datos flexibles |
| Tablas | Documentos/Grafos |
| MySQL | MongoDB |
Arquitectura ANSI/SPARC
Divide la base de datos en tres niveles de abstracción.
Nivel Externo
Cada usuario ve solo la información necesaria.
Nivel Conceptual
Representa toda la estructura lógica de la BD.
Nivel Interno
Define cómo se almacenan físicamente los datos.
Relaciona siempre: Externo → Usuario, Conceptual → Modelo, Interno → Disco físico.
Modelo Cliente-Servidor
En este modelo, el cliente realiza peticiones y el servidor procesa las consultas.
Cliente ---> Consulta SQL ---> Servidor
Cliente <--- Resultados ----- Servidor
Ventajas
- Centralización
- Seguridad
- Escalabilidad
- Acceso multiusuario
Caso de Estudio: Netflix
Netflix utiliza una arquitectura híbrida: bases de datos SQL y NoSQL.
¿Por qué?
- SQL → transacciones críticas
- NoSQL → millones de reproducciones
- Nube → escalabilidad mundial
Caso de Estudio: WhatsApp
WhatsApp maneja millones de mensajes por minuto y más de 2.000 millones de usuarios.
Arquitectura ANSI/SPARC aplicada
- Externo: cada usuario ve sus chats.
- Conceptual: usuarios, grupos y mensajes.
- Interno: servidores distribuidos.
Herramientas y Consejos
Herramientas recomendadas
- MySQL Workbench
- MongoDB Atlas
- PostgreSQL
- Docker
Consejos para estudiar
- Practica SQL todos los días
- Haz esquemas visuales
- Relaciona conceptos con apps reales
- Practica preguntas tipo test
Memoriza ejemplos reales: Netflix → híbrido, WhatsApp → cliente-servidor + ANSI/SPARC.